Importación de las librerias.

Reemplazamos los valores anormales para el BMI.

Creación de una función para dividir datos.

Función para calcular intervalo superior.

Cremos un dataset donde seleccionamos a los usuarios que fuman.

Calculamos el intervalo superior.

Tranformamos los valores atípicos a nulos.

Calculamos el porcentaje de valores nulos.

Aún observamos valores atípicos. Por lo cual obtaré por dividir el dataset en base a la edad del usuario. Para una mejor limpieza.

Dividimos en función a la edad.

Función transformación de valores atípicos a nulos.

La gráfica ignora los valores atípicos. Sólo muestra los datos limpios. Ahora sólo tenemos que reemplazar los valores pérdidos.

Reemplazar los valores nulos.

Obtaré por creear un modelo de regresión lineal. Para reemplazar dichos valores. Ya que los variable de la edad y cargo del seguro. Tiene una tendencia lineal para los usuarios que no fuman.

Creación del modelo lineal.

Separamos los inputs de los outputs.

División de datos de entranamiento y validación.

One Hot Encoding y MinMaxScaler.

One-Hot-Encoding-for-Scikit-Learn-in-Python-Explained-1024x576.png

El primer método es utilizado para varaibles categóricas en la mayoria de los casos. Tiene una ventaja a nivel geometrico que la distancia entre ambas variables ficticas es igual.

El segundo método es usado exclusivamente para varaiables numéricas. Es un reajsute de escalas. Para que las varaibles sean comparables entre si. Los datos quedan es una escala de números de 0 a 1 como máximo.

La fórmula es la siguiente : $x-min(x)/max(x)-min(x)$

Importación del modelo lineal.

Porcentaje de generalización.

El valor de generalización fue bastente alto. Por cual el modelo lineal puede describir al 97 de las observaciones. Podemos usarlo para sustituir los valores pérdidos y así evitar la pérdida excesiva de datos.

Sustitución de valores nulos.

Observamos que exitosamente logramos sustituir los valores pérdidos.

Seleccionamos a los usuarios que fuman.

Reemplazo de valores nulos.

Sustituiremos los valores donde el cargo del seguro sea superior a $50000 dólares.

Creamos un dataset con los datos limpios.

Guardamos el dataset.